$(function () {
    $('#form').bootstrapValidator({
        //1. 指定不校验的类型，默认为[':disabled', ':hidden', ':not(:visible)'],可以不设置
        excluded: [':disabled', ':hidden', ':not(:visible)'],

        //2. 指定校验时的图标显示，默认是bootstrap风格
        feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        },
   

        //3. 指定校验字段
        fields: {
        //校验用户名，对应name表单的name属性
        username: {
            validators: {
                //不能为空
                notEmpty: {
                    message: '用户名不能为空'
                },
                //长度校验
                stringLength: {
                    min: 6,
                        max: 30,
                            message: '用户名长度必须在6到30之间'
                },
                //正则校验
                regexp: {
                    regexp: /^[a-zA-Z0-9_\.]+$/,
                        message: '用户名由数字字母下划线和.组成'
                },

                // 拓展错误提示消息
                callback: {
                    message: '用户名不存在！'
                }
            }
        },

        // 密码
        password :{
            // 验证规则
            validators:{
                // not empty
                notEmpty: {
                    message:'密码不能为空'
                },
                // length
                stringLength:{
                    min:6,
                    max:12,
                    message:'密码长度为6-12位'
                },
                // 拓展消息
                callback:{
                    message:'密码错误！'
                }
            }
        }

        }
    });
    // 2-重置表单全部样式（验证样式）
    // 1-reset按钮的默认样式是重置表单数据
    // 2-resetForm用于重置表单验证样式
    // $('#form).data('bootstrapValidator')获取表单校验实例，通过实例可以调用插件方法
    $('.btn-reset').click(function(){
        // 重置表单的全部样式
        $('#form').data('bootstrapValidator').resetForm();
    });

    // 3-表单校验通过后，发送ajax请求，进行登录，要阻止表单默认提交行为
    // 当点击提交按钮，插件会进行验证，如果验证通过会触发表单的success.form.bv事件
    $('#form').on('success.form.bv', function(e){
        // 阻止默认行为
        e.preventDefault();
        // 把表单数据发送给后台进行判断
        $.ajax({
            type:'post',
            url:'/employee/employeeLogin',
            data:$('#form').serialize(),
            dataType:'json',
            success:function(info){
                console.log(info);
                if(info.error){
                    if(info.error == 1000){
                        // 用户名错误  把用户校验状态改为校验失败
                        $('#form').data('bootstrapValidator').updateStatus('username', 'INVALID', 'callback');
                    }
                    if(info.error == 1001){
                        // 密码错误 把用户校验状态改为校验失败
                        $('#form').data('bootstrapValidator').updateStatus('password',  'INVALID', 'callback');
                    }
                }else {
                    // 成功
                    location.href = './index.html';
                }
            }
        })
    });

});

